<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta http-equiv="Content-Language" content="zh-CN"><title>systemd-journal-upload.service
  中文手册 [金步国]</title><style>
@font-face { font-family: "JinBuGuoWebMono"; src: url("http://www.jinbuguo.com/d/mono.ttf") format("truetype"); }
* { font-family: "JinBuGuoWebMono", "Ubuntu Mono", "Consolas", "Menlo", monospace; }
body { margin:10px; }
h1 { text-align:center; background:#ddd; }
h2#auth_name { text-align:center; margin: 10px 5%; }

    a.headerlink {
      color: #c60f0f;
      font-size: 0.8em;
      padding: 0 4px 0 4px;
      text-decoration: none;
      visibility: hidden;
    }

    a.headerlink:hover {
      background-color: #c60f0f;
      color: white;
    }

    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
      visibility: visible;
    }
</style><script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?d286c55b63a3c54a1e43d10d4c203e75"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><h1>systemd-journal-upload.service 中文手册</h1><h2 id="auth_name">译者：<strong><a href="http://www.jinbuguo.com/">金步国</a></strong></h2><hr><h3>版权声明</h3><p>本文译者是一位开源理念的坚定支持者，所以本文虽然不是软件，但是遵照开源的精神发布。</p><ul><li>无担保：本文译者不保证译文内容准确无误，亦不承担任何由于使用此文档所导致的损失。</li><li>自由使用：任何人都可以自由的<u>阅读/链接/打印</u>此文档，无需任何附加条件。</li><li>名誉权：任何人都可以自由的<u>转载/引用/再创作</u>此文档，但必须保留译者署名并注明出处。</li></ul><h3>其他作品</h3><p>本文译者十分愿意与他人分享劳动成果，如果你对我的其他翻译作品或者技术文章有兴趣，可以在如下位置查看现有的作品集：</p><ul><li><a href="http://www.jinbuguo.com/">金步国作品集</a> [ <a href="http://www.jinbuguo.com/">http://www.jinbuguo.com/</a> ]</li></ul><h3>联系方式</h3><p>由于译者水平有限，因此不能保证译文内容准确无误。如果你发现了译文中的错误(哪怕是错别字也好)，请来信指出，任何提高译文质量的建议我都将虚心接纳。</p><ul><li>Email(QQ)：70171448在QQ邮箱</li></ul><hr><a href="systemd.index.html">手册索引</a> ·
  <a href="systemd.directives.html">指令索引</a><span style="float:right">systemd-241</span><hr><div class="refentry"><a name="systemd-journal-upload"></a><div class="titlepage"></div><div class="refnamediv"><h2>名称</h2><p>systemd-journal-upload.service, systemd-journal-upload — 通过网络向远程发送日志</p></div><div class="refsynopsisdiv"><h2>大纲</h2><p><code class="filename">systemd-journal-upload.service</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-journal-upload</code>  [OPTIONS...] [-u/--url=<em class="replaceable"><code>URL</code></em>] [SOURCES...]</p></div></div><div class="refsect1"><a name="id-1.5"></a><h2 id="描述">描述<a class="headerlink" title="Permalink to this headline" href="systemd-journal-upload.service.html#%E6%8F%8F%E8%BF%B0">¶</a></h2><p><span class="command"><strong>systemd-journal-upload</strong></span> 能够将日志发送到
    with <code class="option">--url=</code> 选项指定的远程目标。
    这个程序能够读取一个或多个日志文件(类似于
    <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>)，
    除非使用了下面的某个选项进行限制，否则将会发送运行此进程的用户所能够访问的全部日志，
    在发送完既有的日志之后，此程序将会继续等待新日志的产生，
    并且持续不断的发送新生成的日志。</p><p>系统服务 <code class="filename">systemd-journal-upload.service</code> 使用
    <span class="command"><strong>systemd-journal-upload</strong></span> 工具将日志发送到远程服务器，
    其配置文件为
    <a href="journal-upload.conf.html#"><span class="citerefentry"><span class="refentrytitle">journal-upload.conf</span>(5)</span></a>
    并且必须设置 <code class="varname">URL=</code> 的值。</p></div><div class="refsect1"><a name="id-1.6"></a><h2 id="选项(OPTIONS)">选项(OPTIONS)<a class="headerlink" title="Permalink to this headline" href="systemd-journal-upload.service.html#%E9%80%89%E9%A1%B9(OPTIONS)">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="-u"><span class="term"><code class="option">-u</code>, </span><span class="term"><code class="option">--url=[<span class="optional">https://</span>]<em class="replaceable"><code>URL</code></em>[:<em class="replaceable"><code>PORT</code></em>]</code>, </span><span class="term"><code class="option">--url=[<span class="optional">http://</span>]<em class="replaceable"><code>URL</code></em>[:<em class="replaceable"><code>PORT</code></em>]</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#-u">¶</a></dt><dd><p>设置将日志发送到哪个地址。
        既可以同时指定传输协议与目标主机，
        也可以仅指定目标主机而省略传输协议。
        如果省略传输协议，那么表示默认使用 <code class="constant">https</code> 协议。
        端口号可以使用冒号("<code class="literal">:</code>")在主机名之后指定，
        默认为 <code class="constant">19532</code> 端口。
        </p></dd><dt id="--system"><span class="term"><code class="option">--system</code>, </span><span class="term"><code class="option">--user</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--system">¶</a></dt><dd><p><code class="option">--system</code> 表示仅发送内核与系统服务生成的日志，
        <code class="option">--user</code> 表示仅发送运行此进程的用户服务生成的日志。
        此二选项的含义与
        <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>
         的
        <code class="option">--system</code> 与 <code class="option">--user</code> 选项相同。
        如果这两个选项都没有使用，那么将会发送运行此进程的用户所能够访问的全部日志。
        </p></dd><dt id="-m"><span class="term"><code class="option">-m</code>, </span><span class="term"><code class="option">--merge</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#-m">¶</a></dt><dd><p>混合发送包括来自于其他远程主机的日志在内的所有可见日志。
        此选项与
        <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>
        的 <code class="option">--merge</code> 选项的含义相同。</p></dd><dt id="-D"><span class="term"><code class="option">-D</code>, </span><span class="term"><code class="option">--directory=<em class="replaceable"><code>DIR</code></em></code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#-D">¶</a></dt><dd><p>接受一个以绝对路径表示的目录，
        表示仅发送指定目录下的日志(而不是默认的运行时和系统日志目录中的日志)。
        此选项与
        <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>
        的
        <code class="option">--directory=</code> 选项的含义相同。
        </p></dd><dt id="--file=GLOB"><span class="term"><code class="option">--file=<em class="replaceable"><code>GLOB</code></em></code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--file=GLOB">¶</a></dt><dd><p><em class="replaceable"><code>GLOB</code></em> 是一个可以包含"?"与"*"的文件路径匹配模式。
        表示仅发送与
        <em class="replaceable"><code>GLOB</code></em> 模式匹配的文件中的日志(而不是默认的运行时和系统日志目录中的日志)。
        可以多次使用此选项以指定多个匹配模式(多个模式之间用"OR"逻辑连接)。
        此选项与
        <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>
        的 <code class="option">--file=</code> 选项的含义相同。
        </p></dd><dt id="--cursor="><span class="term"><code class="option">--cursor=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--cursor=">¶</a></dt><dd><p>仅发送从指定的游标(cursor)开始的日志。
        此选项与
        <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>
        的 <code class="option">--cursor=</code> 选项的含义相同。</p></dd><dt id="--after-cursor="><span class="term"><code class="option">--after-cursor=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--after-cursor=">¶</a></dt><dd><p>仅发送
        从指定的游标(cursor)<span class="emphasis"><em>之后</em></span>开始的日志。
        此选项与
        <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>
        的 <code class="option">--after-cursor=</code> 选项的含义相同。
        </p></dd><dt id="--save-state=PATH"><span class="term"><code class="option">--save-state</code>[<span class="optional">=<em class="replaceable"><code>PATH</code></em></span>]</span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--save-state=PATH">¶</a></dt><dd><p>仅发送从 <em class="replaceable"><code>PATH</code></em>
        文件中记录的游标(cursor)<span class="emphasis"><em>之后</em></span>开始的日志。
         <em class="replaceable"><code>PATH</code></em> 的默认值是
        <code class="filename">/var/lib/systemd/journal-upload/state</code> 。
        注意，每成功上传一个日志事件， <em class="replaceable"><code>PATH</code></em>
        文件的内容都将被自动同步更新为该日志事件的游标(cursor)值。
        </p></dd><dt id="--follow=BOOL"><span class="term"><code class="option">--follow</code>[<span class="optional">=<em class="replaceable"><code>BOOL</code></em></span>]</span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--follow=BOOL">¶</a></dt><dd><p>
          是否让 <span class="command"><strong>systemd-journal-upload</strong></span> 等待输入。
        </p></dd><dt id="--key="><span class="term"><code class="option">--key=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--key=">¶</a></dt><dd><p>
          PEM 格式的 SSL 私钥文件的路径。
          默认值是 <code class="filename">/etc/ssl/private/journal-upload.pem</code> 。
        </p></dd><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--cert=">¶</a></dt><dd><p>
          PEM 格式的 SSL 证书文件的路径。
          默认值是 <code class="filename">/etc/ssl/certs/journal-upload.pem</code> 。
        </p></dd><dt id="--trust="><span class="term"><code class="option">--trust=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--trust=">¶</a></dt><dd><p>
          PEM 格式的 SSL CA 证书文件的路径。
          特殊值 <code class="option">all</code> 表示
          禁止检查证书的有效性。
          默认值是 <code class="filename">/etc/ssl/ca/trusted.pem</code> 。
        </p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#-h">¶</a></dt><dd><p><a name="help-text"></a>显示简短的帮助信息并退出。
    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-upload.service.html#--version">¶</a></dt><dd><p><a name="version-text"></a>显示简短的版本信息并退出。</p></dd></dl></div></div><div class="refsect1"><a name="id-1.7"></a><h2 id="退出状态">退出状态<a class="headerlink" title="Permalink to this headline" href="systemd-journal-upload.service.html#%E9%80%80%E5%87%BA%E7%8A%B6%E6%80%81">¶</a></h2><p>返回值为 0 表示成功，
    非零返回值表示失败代码。</p></div><div class="refsect1"><a name="id-1.8"></a><h2 id="例子">例子<a class="headerlink" title="Permalink to this headline" href="systemd-journal-upload.service.html#%E4%BE%8B%E5%AD%90">¶</a></h2><div class="example"><a name="id-1.8.2"></a><p class="title"><b>例 1. 设置用于身份认证的证书</b></p><div class="example-contents"><p>一方面，由可信CA签名的证书可以用于验证接收日志的服务器是否真实可信。
      另一方面，
      也可以使用证书来验证发送日志的客户端是否真实可信。</p><p>可以使用
      <span class="command"><strong>openssl</strong></span> 工具来生成证书以及对证书进行签名，
      注意，为了保障安全，密钥长度不应少于 2048 位：</p><pre class="programlisting">openssl req -newkey rsa:2048 -days 3650 -x509 -nodes \
      -out ca.pem -keyout ca.key -subj '/CN=Certificate authority/'

cat &gt;ca.conf &lt;&lt;EOF
[ ca ]
default_ca = this

[ this ]
new_certs_dir = .
certificate = ca.pem
database = ./index
private_key = ca.key
serial = ./serial
default_days = 3650
default_md = default
policy = policy_anything

[ policy_anything ]
countryName             = optional
stateOrProvinceName     = optional
localityName            = optional
organizationName        = optional
organizationalUnitName  = optional
commonName              = supplied
emailAddress            = optional
EOF

touch index
echo 0001 &gt;serial

SERVER=server
CLIENT=client

openssl req -newkey rsa:2048 -nodes -out $SERVER.csr -keyout $SERVER.key -subj "/CN=$SERVER/"
openssl ca -batch -config ca.conf -notext -in $SERVER.csr -out $SERVER.pem

openssl req -newkey rsa:2048 -nodes -out $CLIENT.csr -keyout $CLIENT.key -subj "/CN=$CLIENT/"
openssl ca -batch -config ca.conf -notext -in $CLIENT.csr -out $CLIENT.pem
</pre><p>生成的 <code class="filename">ca.pem</code>,
      <code class="filename">server.pem</code>,
      <code class="filename">server.key</code> 文件应该安装到接收日志的服务器端；
      而生成的 <code class="filename">ca.pem</code>,
      <code class="filename">client.pem</code>,
      <code class="filename">client.key</code> 文件应该安装到发送日志的客户端。
      这些文件的位置可以分别使用 <code class="filename">/etc/systemd/journal-remote.conf</code> 与 <code class="filename">/etc/systemd/journal-upload.conf</code>
      配置文件中的 <code class="varname">TrustedCertificateFile=</code>,
      <code class="varname">ServerCertificateFile=</code>,
      <code class="varname">ServerKeyFile=</code> 
      选项来指定。
      这些文件的默认位置
      可以使用
      <span class="command"><strong>systemd-journal-remote --help</strong></span> 与
      <span class="command"><strong>systemd-journal-upload --help</strong></span> 命令来显示。</p></div></div><br class="example-break"></div><div class="refsect1"><a name="id-1.9"></a><h2 id="参见">参见<a class="headerlink" title="Permalink to this headline" href="systemd-journal-upload.service.html#%E5%8F%82%E8%A7%81">¶</a></h2><p>
      <a href="journal-upload.conf.html#"><span class="citerefentry"><span class="refentrytitle">journal-upload.conf</span>(5)</span></a>,
      <a href="systemd-journal-remote.service.html#"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote.service</span>(8)</span></a>,
      <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
      <a href="systemd-journald.service.html#"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
      <a href="systemd-journal-gatewayd.service.html#"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>
    </p></div></div></body></html>
